package com.ruoyi.movie.service;

import java.util.List;
import com.ruoyi.movie.domain.MovieBasicToColumn;

/**
 * 影视栏目关联Service接口
 *
 * @author ruoyi
 * @date 2025-11-12
 */
public interface IMovieBasicToColumnService
{
    /**
     * 查询影视栏目关联
     *
     * @param movieBasicToColumnId 影视栏目关联主键
     * @return 影视栏目关联
     */
    public MovieBasicToColumn selectMovieBasicToColumnById(Integer movieBasicToColumnId);

    /**
     * 查询影视栏目关联列表
     *
     * @param movieBasicToColumn 影视栏目关联
     * @return 影视栏目关联集合
     */
    public List<MovieBasicToColumn> selectMovieBasicToColumnList(MovieBasicToColumn movieBasicToColumn);

    /**
     * 根据影视ID查询关联的栏目ID列表
     *
     * @param movieBasicsId 影视基础ID
     * @return 栏目ID集合
     */
    public List<Integer> selectColumnIdsByMovieBasicsId(Integer movieBasicsId);

    /**
     * 新增影视栏目关联
     *
     * @param movieBasicToColumn 影视栏目关联
     * @return 结果
     */
    public int insertMovieBasicToColumn(MovieBasicToColumn movieBasicToColumn);

    /**
     * 批量新增影视栏目关联
     *
     * @param movieBasicsId 影视基础ID
     * @param columnIds 栏目ID数组
     * @return 结果
     */
    public int batchInsertMovieBasicToColumn(Integer movieBasicsId, Integer[] columnIds);

    /**
     * 修改影视栏目关联
     *
     * @param movieBasicToColumn 影视栏目关联
     * @return 结果
     */
    public int updateMovieBasicToColumn(MovieBasicToColumn movieBasicToColumn);

    /**
     * 批量删除影视栏目关联
     *
     * @param movieBasicToColumnIds 需要删除的影视栏目关联主键集合
     * @return 结果
     */
    public int deleteMovieBasicToColumnByIds(Integer[] movieBasicToColumnIds);

    /**
     * 删除影视栏目关联信息
     *
     * @param movieBasicToColumnId 影视栏目关联主键
     * @return 结果
     */
    public int deleteMovieBasicToColumnById(Integer movieBasicToColumnId);

    /**
     * 根据影视ID删除关联
     *
     * @param movieBasicsId 影视基础ID
     * @return 结果
     */
    public int deleteMovieBasicToColumnByMovieBasicsId(Integer movieBasicsId);

    /**
     * 保存影视栏目关联（先删除旧的，再批量插入新的）
     *
     * @param movieBasicsId 影视基础ID
     * @param columnIds 栏目ID数组
     * @return 结果
     */
    public int saveMovieBasicToColumn(Integer movieBasicsId, Integer[] columnIds);
}
